const requestConfig = {
    // 是否使用线上接口（全局开关）
    useOnlineApi: false,

    // 接口地址前缀配置
    baseUrls: {
        online: 'https://your-api-server.com/api/',
        local: 'http://localhost:3000/api/'
    },

    // 按业务分类的完整接口地址配置
    apiMap: {
        // 用户相关接口
        user: {
            login: {
                online: 'user/login',
                local: 'user/login'
            },
            register: {
                online: 'user/register',
                local: 'user/register'
            },
            profile: {
                online: 'user/profile',
                local: 'user/profile'
            }
        },
        // 商品相关接口
        product: {
            list: {
                online: 'product/list',
                local: 'product/list'
            },
            detail: {
                online: 'product/detail',
                local: 'product/detail'
            }
        }
    },

    // 切换接口类型（true=线上接口，false=本地接口）
    switchApiType(isOnline) {
        this.useOnlineApi = !!isOnline;
        console.log(`已切换到${this.useOnlineApi ? '线上' : '本地'}接口`);
    },

    // 获取当前接口地址前缀
    get currentBase() {
        return this.useOnlineApi ? this.baseUrls.online : this.baseUrls.local;
    },

    // 通用获取接口地址方法
    getApi(business, name) {
        const apiData = this.apiMap[business]?.[name];
        if (!apiData) {
            console.error(`找不到接口配置：${business}.${name}`);
            return this.getFallbackApi();
        }
        return this.currentBase + (this.useOnlineApi ? apiData.online : apiData.local);
    },


    // 备用接口地址
    getFallbackApi() {
        return this.currentBase + 'common/error';
    }
};

export default requestConfig;    